
import junit.framework.*;
import java.awt.Point;

public class PruebasUnitarias extends TestCase {
	
	public void testMovimiento() {
		
		Algo42 algo42 = new Algo42();
		Point pos1 = new Point();
		Point pos2 = new Point();
		pos1.move(0,0);
		algo42.setPosicion(pos1);
		pos2 = algo42.getPosicion();
		assertTrue( pos1.getX() == pos2.getX() && (pos1.getY() == pos2.getY()));
		
		for (int i = 1; i < 5; i++) {
			algo42.moverArriba();
		}
		
		pos1 = algo42.getPosicion();
		pos2.move(0,5);
		assertTrue( pos1.getX() == pos2.getX() && (pos1.getY() == pos2.getY()));

		algo42.moverAbajo();
		pos1 = algo42.getPosicion();
		pos2.move(0,4);
		assertTrue( pos1.getX() == pos2.getX() && (pos1.getY() == pos2.getY()));

		for (int i = 1; i < 5; i++) {
			algo42.moverDerecha();
		}
		pos1 = algo42.getPosicion();
		pos2.move(5,4);
		assertTrue( pos1.getX() == pos2.getX() && (pos1.getY() == pos2.getY()));
		algo42.moverIzquierda();
		pos1 = algo42.getPosicion();
		pos2.move(4,4);
		assertTrue( pos1.getX() == pos2.getX() && (pos1.getY() == pos2.getY()));
		}
	
	public void testAvionCivil() {
		
		AvionCivil avionCivil = new AvionCivil();
		Point pos1 = new Point();
		Point pos2 = new Point();
		pos1.move(47,25);
		avionCivil.setPosicion(pos1);
		
		avionCivil.actuar();
		pos1 = avionCivil.getPosicion();
		pos2.move(46,25);
		assertTrue( pos1.getX() == pos2.getX() && (pos1.getY() == pos2.getY()));
		
		for (int i = 1; i < 43; i++) {
			avionCivil.actuar();
		}
		pos1 = avionCivil.getPosicion();
		pos2.move(3,25);
		assertTrue( pos1.getX() == pos2.getX() && (pos1.getY() == pos2.getY()));
		
		avionCivil.actuar();
		assertTrue(avionCivil.estaDestruido());
	}

}
